Secure User Plane Location (SUPL) is a user plane-based standard protocol, which is a communication protocol allowing a mobile phone user to communicate with a location server, e.g. SUPL Location Platform (SLP), to obtain the location of a mobile location SET.
Generally, immediate SET location includes network-initiated location and SET-initiated location. Specifically, the network-initiated location refers to that a location request initiating party initiates locating for another SET via a client of the initiating party, and the SET-initiated location refers to that a location request initiating party initiates locating for the initiating party itself. The network-initiated location and SET-initiated location procedures, respectively, are described as follows. When the client of the location request initiating party initiates locating for another SET by means of a Mobile Location Service (MLS) application residing in the client, a Home SUPL Location Platform (H-SLP) of the target SET instructs the target SET to start locating, calculates the location of the target SET in the session between the target SET and the H-SLP, and sends the calculation result to the MLS client to complete the location procedure. Accordingly, when a SUPL SET initiates locating for itself, the SUPL SET makes a session with its home H-SLP and obtains its location immediately.
A triggered location procedure is different from the immediate location procedure above. When the MLS application in the client initiates a triggered location procedure for the target SET, a triggered location condition resides in the H-SLP of the target SET or in the target SET, and, when the triggering condition is met, a location session is triggered. If the trigger resides in the H-SLP, a network-initiated location procedure is triggered. If the trigger resides in the target SET, a SET-initiated location procedure is triggered.
Periodical location, a kind of triggered location, triggers locating for the target SET at a certain time interval within a certain period, in order to learn about the location information of the target SET within this period.
Area event triggered location refers to that the network or SET detects periodically whether the target SET is in, entering or leaving a specified area. If the target SET is in, entering or leaving the specified area, it means that the triggering condition is met, and then a location report is triggered.
In some location applications, the target SET may actively initiate a location request for itself. However, besides itself, the target SET may expect other target SETs to obtain its location information. That is to say, in the SUPL location service initiated by such a SET, the location result may require to be sent to other SETs via the location platform.
Conventionally, only in the immediate location procedure, it may be supported that the target SET sends its location information to a third party. In this case, the target SET specifies an identification (ID) of a third party to which the location information of the target SET is to be sent, when the target SET initiates the procedure to transmit its location information to the third party. After the target SET obtains its location by means of the location service, the SLP transmits the location information of the target SET to the third party. A typical procedure initiated by a SET to transmit its location information to a third party is shown in FIG. 1 and described as below.
1. The SUPL agent on the target SET receives a request to transmit the location information of the target SET to a third party from an application running on the target SET. If the target SET is not already attached to the packet data network, the SUPL agent attaches itself to the packet data network, or the target SET establishes a data connection in Circuit Switched domain (CS).
2. The SUPL agent on the target SET establishes an IP connection to the H-SLP by using a default SLP address provided by a home network of the target SET, and then sends a SUPL SET INIT message to the H-SLP to start a location session. The SUPL SET INIT message includes a session-id, SET capabilities, a notified SET-id (ID of the third party), a MO_mode (SET-initiated location request mode) indicator and an ACK mode (acknowledge mode). The MO_mode indicator is designed to identify a SET-initiated location request, i.e. it indicates whether the location request is a location request initiated by the SET to locate another SET or a location request initiated by the SET to transmit its location to a third party. The ACK mode is designed to indicate whether the third party is required to send a receiving acknowledge of the location information.
3. The H-SLP determines that the target SET is not currently in roaming state.
4. The H-SLP sends to the target SET a SUPL RESPONSE message in which the session-id rather than address information of the H-SLP is contained, thus to instruct the target SET that it is not necessary to establish a new connection. The SUPL RESPONSE message may further contain a location method determined by the H-SLP which is consistent with the location method supported by the target SET contained in the SUPL SET INIT message. If the target SET requests for the location method in the SUPL SET INIT message, the H-SLP uses the supported location protocol obtained from the SUPL SET INIT message, e.g. Radio Resource Location Protocol (RRLP), Radio Resource Control (RRC) protocol, or TIA-801 protocol defined by Telecommunications Industry Association of America. If the approximate location of the target SET that meets the requested Quality of Positioning (QoP) can be calculated from the information in the SUPL SET INIT message, the H-SLP proceeds to step 8 directly.
5. Upon receipt of the SUPL RESPONSE message from the H-SLP, the target SET sends a SUPL POS INIT message in which at least the session-id, the SET capabilities and a location ID are contained. The SET capabilities include the supported location method (e.g., SET-Assisted A-GPS, SET-Based A-GPS) and related location protocol (e.g., RRLP, RRC, or TIA-801). The target SET may provide Network Measurement Result (NMR) parameters related to the currently used radio technique. For a Global System for Mobile communication (GSM) network, for example, the parameters include Timing Advance (TA) and Received Level (RXLEV). If the target SET can calculate its location by itself, it may also provide its location information. The target SET may carry parameters for the first SUPL POS message in the SUPL POS INIT message. The target SET may set the requested assistant data parameters in the SUPL POS NIT message.
6. The target SET exchanges some location messages with the H-SLP continuously. The H-SLP calculates an estimated location result according to the received location measurement information (SET-Assisted), or the target SET calculates the estimated location result according to the assistant data provided by the SLP.
7. After the location calculation is completed, the H-SLP sends a SUPL END message to the target SET to notify the target SET that the location session has been completed. The calculated location may be carried in the SUPL END message, according to the used location method and location protocol.
8. The H-SLP transmits the location information to the third party.
In location application services, transmitting the location information to a third party is not only required by the immediate location service, but also by the triggered location service, especially the area event triggered location service.
For example, in the scenario that the mobile phone of User2 is a mobile phone that can initiate an emergency location service and User1 is a guardian of User2, User2 activates an emergency location application in his mobile phone to initiate a periodical self-location, and each time the location is completed successfully, the SLP notifies User1 of the current location of User2. User1 returns a response to the SLP to acknowledge that he/she has received the location result. If User1 does not return any acknowledge, the SLP may attempt to resend the location result. If the SLP fails to send the location result to User1, the SLP preserves the data for a certain period of time to wait for User2 to get the data actively.
In the network-initiated triggered location procedure specified in SUPL, the triggered location result or report about the target SET is obtained by the client that initiates the location. However, it may be necessary for the SLP to send the location result or report to a third party SET in some location service applications, for example, in the scenario as follows.
When pursuing or monitoring a criminal, the police station, as a special client, initiates a triggered location request for locating the criminal to the SLP via a SUPL agent. In each location process, the location result may be sent by the H-SLP directly to the mobile phones of relevant policemen, it is not necessary for the client to send the result to the policemen by group when receiving the result, or for the policemen to locate the criminal by themselves. The policemen may obtain the location of the criminal periodically, or the location of the criminal may be reported to the policemen responsible for the mission when the criminal leaves or enters into a specific area. Upon receipt of the location result, a response should be returned from the mobile phones of the policemen to the H-SLP to acknowledge the receipt of the location result. If no response is received from these mobile phones, the H-SLP may attempt to resend the location result.
In the SET-initiated location procedure for transmitting the location to a third party specified in SUPL, the location procedure is executed only once, then the location result is transmitted to the third party specified by the target SET. However, the protocol currently doesn't support sending the location result periodically to the third party according to a request of the target SET or network or sending the location result to the third party only when a certain area event triggering condition is met.